#ifndef CPPNEXT_CONFIG
#define CPPNEXT_CONFIG




#if defined(_MSC_VER) && !defined(__clang__)

//_MSC_FULL_VER

#pragma warning(push)


#if _MSC_VER <= 1900 

#pragma warning(disable: 4814)

#define CPPNEXT_NO_CONSTEXPR

#endif

// MSVC 2013 workarounds
#if _MSC_VER <= 1800 

#pragma warning(disable: 4351) // warns about newly introduced aggregate initializer behavior
#pragma warning(disable: 4789)

#define CPPNEXT_NO_NOEXCEPT


#define CPPNEXT_NO_UNCAUGHT_EXCEPTIONS

#define CPPNEXT_NO_USER_DEFINED_LITERAL

#endif // _MSC_VER <= 1800
#endif // _MSC_VER



//////////////////////////////////////////////////////////////////////////


#ifdef CPPNEXT_NO_NOEXCEPT

#pragma push_macro("noexcept")

#define noexcept 
#define noexcept_if(b)
#define noexcept_of(b)

#else

#define noexcept_if(b) noexcept(b)
#define noexcept_of(b) noexcept(b)

#endif // CPPNEXT_NO_EXCEPT


#ifdef CPPNEXT_NO_CONSTEXPR

#pragma push_macro("constexpr")
#define constexpr  

#endif // CPPNEXT_NO_CONSTEXPR









#endif